// 汉诺塔，打印出每次行动
#include <iostream>
#include <string>
using namespace std;
void func(int i, string start, string end, string other);
void test(int n){
    func(n,"左","中","右");
}
void func(int i, string start, string end, string other)
{
    if (i == 1)
    {
        //在第一个func下，将第一个盘子移动到other
        cout << "move 1 from " << start << "to" << end << endl;
        return;
    }
    func(i - 1, start, other, end);
    //在第一个func下，将最后一个盘子之前的全部移动到other
    cout << "move" << i << "from" << start << "to" << end << endl;
    //将end上的盘子移动到other
    func(i-1,other,end,start);
}
int main()
{
    test(3);
    return 0;
}